#include<bits/stdc++.h>
using namespace std;
typedef long long int lint;
int main(){
int n,d,l;
cin>>n>>d>>l;
int mi,ma,ami,ama;
if(n%2==0){
mi=1+d;
ma=l+d;
ami=((1-l)*((n-1)/2))+1;
ama=((l-1)*((n-1)/2))+l;
}
else{
mi=1-d;
ma=l-d;
ami=(1-l)*((n-1)/2);
ama=(l-1)*((n-1)/2);
}
// cout<<ma<<" "<<mi<<" "<<ama<<" "<<ami<<endl;
if(ami>ma || ama<mi){
cout<<-1<<endl;
return 0;
}
if(ami>=mi && ami<=ma){
vector<int>ans(n);
int j=0;
for(int i=n-2;i>=0;i--){
if(j%2==0){
ans[i]=1;
}
else{
ans[i]=l;
}
j++;
}
if(n%2==0)ans[n-1]=(ami-d);
else ans[n-1]=(ami+d);
for(int i=0;i<n;i++){
cout<<ans[i]<<" ";
}
cout<<endl;
// cout<<"h1"<<endl;
return 0;
}
else if(ama>=mi && ama<=ma){
vector<int>ans(n);
int j=0;
for(int i=n-2;i>=0;i--){
if(j%2==0){
ans[i]=l;
}
else{
ans[i]=1;
}
j++;
}
if(n%2==0)ans[n-1]=(ama-d);
else ans[n-1]=(ama+d);
for(int i=0;i<n;i++){
cout<<ans[i]<<" ";
}
cout<<endl;
// cout<<"h2"<<endl;
return 0;
}
else{
vector<int>ans(n);
int val=mi;
int diff=mi-ami;
int q=diff/(l-1);
int r=diff%(l-1);
int j=0;
for(int i=n-2;i>=0;i--){
if(j%2==0){
if(q>0){
ans[i]=l;
q--;
}
else if(q==0 & r>0){
ans[i]=1+r;
r=0;
}
else{
ans[i]=1;
}
}
else{
if(q>0){
ans[i]=1;
q--;
}
else if(q==0 & r>0){
ans[i]=l-r;
r=0;
}
else{
ans[i]=l;
}
}
j++;
}
ans[n-1]=1;
for(int i=0;i<n;i++){
cout<<ans[i]<<" ";
}
cout<<endl;
// cout<<"h3"<<endl;
return 0;
}
return 0;
}
580A- Kefa and First Steps | 1472B- Fair Division |
996A - Hit the Lottery | MSNSADM1 Football |
MATCHES Playing with Matches | HRDSEQ Hard Sequence |
DRCHEF Doctor Chef | 559. Maximum Depth of N-ary Tree |
821. Shortest Distance to a Character | 1441. Build an Array With Stack Operations |
1356. Sort Integers by The Number of 1 Bits | 922. Sort Array By Parity II |
344. Reverse String | 1047. Remove All Adjacent Duplicates In String |
977. Squares of a Sorted Array | 852. Peak Index in a Mountain Array |
461. Hamming Distance | 1748. Sum of Unique Elements |
897. Increasing Order Search Tree | 905. Sort Array By Parity |
1351. Count Negative Numbers in a Sorted Matrix | 617. Merge Two Binary Trees |
1450. Number of Students Doing Homework at a Given Time | 700. Search in a Binary Search Tree |
590. N-ary Tree Postorder Traversal | 589. N-ary Tree Preorder Traversal |
1299. Replace Elements with Greatest Element on Right Side | 1768. Merge Strings Alternately |
561. Array Partition I | 1374. Generate a String With Characters That Have Odd Counts |